      <h1 class="entry-title entry-title-single" itemprop="headline">SAP Bar Code 开发(01) &#8211; SAP条码解决方案</h1>

    <div class="entry-content entry-content-single entry-content-aside" itemprop="text">
      <p>前段时间，需要对客户进行售前工作，整理下<span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/barcode" title="查看Barcode中的全部文章" target="_blank">Barcode</a></span>相关的PPT，加上之前也开发过几个<span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/barcode" title="查看Barcode中的全部文章" target="_blank">Barcode</a></span>的项目，于是整理了下相关内容，就有了这个系列。</p>
<p>相信很多朋友对Barcode（即条码）都不陌生，在企业生产管理当中的使用，非常频繁；</p>
<p>同时<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap" title="SAP" target="_blank">SAP</a></span>也提供了几种解决方案供用户选择。下面简述下<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap" title="SAP" target="_blank">SAP</a></span> Barcode常用的几种解决方案及其区别。</p>
<p><span id="more-680"></span></p>
<p>&nbsp;</p>
<p><strong>1) <span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/sap-console" title="查看SAP Console中的全部文章" target="_blank">SAP Console</a></span></strong></p>
<p><span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/sap-console" title="查看SAP Console中的全部文章" target="_blank">SAP Console</a></span> 是一种用于终端和SAP交互的组件，通过Telnet  Server表现，故其显示界面十分不友好；</p>
<p>它可以通过前台终端将SAPGUI的屏幕转换成文本并显示出来，后台与其他外部设备直接对接，不需要使用第三方中间件；</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/02/barcode_01_sap_console.jpg" alt="barcode_01_sap_console" width="518" height="285" class="alignnone size-full wp-image-681" /></p>
<p>在710版本后，与 SAP GUI分来，单独安装</p>
<p>注意，在 SAP 推出 <span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/its" title="查看ITS中的全部文章" target="_blank">ITS</a></span>  Mobile 后，<span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/sap-console" title="查看SAP Console中的全部文章" target="_blank">SAP Console</a></span> 可以说基本已被淘汰。</p>
<p>&nbsp;</p>
<p><strong>2) <span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/its" title="查看ITS中的全部文章" target="_blank">ITS</a></span> (Internet Transaction Server)</strong></p>
<p>ITS Mobile就是图形化的 SAP Console，是继SAP Console之后一种与移动设备的解决方案；</p>
<p>通过把SAP的 Dynpro 画面变成 HTML格式的网页文件，使得SAP系统通过Web技术可以被友好地访问;</p>
<p>在SAP上通过<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap-abap" title="ABAP" target="_blank">ABAP</a></span>开发Dialog程序，然后通过服务发布成HTML，再通过ITS Server 推送到ICM上，这样就能通过Web端方便用户操作；</p>
<p>&nbsp;</p>
<p>相关Demo可以查看博客园的文章：<a href="http://www.cnblogs.com/byfhd/archive/2012/02/23/2364679.html" target="_blank">http://www.cnblogs.com/byfhd/archive/2012/02/23/2364679.html</a></p>
<p>由于<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap-abap" title="ABAP" target="_blank">ABAP</a></span>程序需要发布成HTML模板，才能在Web浏览器上显示，因此，支持在HTML模板修改界面的样式。</p>
<p>笔者在开发过的项目中，ITS支持可以在基于Windows Mobile和Win CE操作系统的移动终端中，使用Web浏览器运行。</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/02/barcode_01_its.jpg" alt="barcode_01_its" width="460" height="215" class="alignnone size-full wp-image-682" /></p>
<p><strong>3) Middleware Integration</strong></p>
<p>中间件集成，也是通常说的Web Solution；</p>
<p>SAP提供中间组件：NCO(.net connector) 和 JCO(java connector) 与 SAP连接并调用 SAP RFC；</p>
<p>而 NCO 或 JCO 的组件需要通过.Net 或 Java开发相关的程序后，需要部署到服务器（IIS 或 Tomcat）上，通过 Web 端访问；</p>
<p>这里注意的是，操作的一些临时数据，有些可能需要存储在相关的数据库上，因此需要额外准备相关的数据库。</p>
<p>&nbsp;</p>
<p>下面列出三者之间的区别：</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="205"><b>描述</b></td>
<td valign="top" width="205"><b>Middleware</b></td>
<td valign="top" width="205"><b>ITS Mobile</b></td>
<td valign="top" width="205"><b>SAP Console</b></td>
</tr>
<tr>
<td valign="top" width="205">SAP License</td>
<td valign="top" width="205">只需一个SAP License</td>
<td valign="top" width="205">每一个移动设备需要一个License</td>
<td valign="top" width="205">每一个移动设备需要一个License和一个Telnet License</td>
</tr>
<tr>
<td valign="top" width="205">用户界面</td>
<td valign="top" width="205">- 支持图形化或者文字化用户界面</td>
<td valign="top" width="205">- 支持图形化用户界面</p>
<p>- 需要扫描器支持</td>
<td valign="top" width="205">- 只支持文字化用户界面</td>
</tr>
<tr>
<td valign="top" width="205">支持模式</td>
<td valign="top" width="205">支持无线和批处理模式</td>
<td valign="top" width="205">只支持无线模式</td>
<td valign="top" width="205">只支持无线模式</td>
</tr>
<tr>
<td valign="top" width="205">开发周期</td>
<td valign="top" width="205">比较长</td>
<td valign="top" width="205">比较短</td>
<td valign="top" width="205">比较短</td>
</tr>
<tr>
<td valign="top" width="205">服务器硬件需求</td>
<td valign="top" width="205">中间件服务器</td>
<td valign="top" width="205">不需要</td>
<td valign="top" width="205">Telnet 服务器</td>
</tr>
<tr>
<td valign="top" width="205">软件需求</td>
<td valign="top" width="205">SQL Server</td>
<td valign="top" width="205">不需要</td>
<td valign="top" width="205">Telnet 服务</p>
<p>Telnet 客户端</td>
</tr>
<tr>
<td valign="top" width="205">无线网络覆盖需求</td>
<td valign="top" width="205">一般（支持批处理）</td>
<td valign="top" width="205">比较高</td>
<td valign="top" width="205">比较高</td>
</tr>
<tr>
<td valign="top" width="205">与SAP交换</td>
<td valign="top" width="205">支持实时更新和批量更新</td>
<td valign="top" width="205">实时更新</td>
<td valign="top" width="205">实时更新</td>
</tr>
<tr>
<td valign="top" width="205">开发工具</td>
<td valign="top" width="205">SAP – ABAP</p>
<p>移动终端 – MS Visual Studio .Net</td>
<td valign="top" width="205">SAP – ABAP</td>
<td valign="top" width="205">SAP – ABAP</td>
</tr>
</tbody>
</table>
<p>三者各有其优缺点，当然这里面主要还是看客户需求需要，使用哪种解决方案。</p>
<p>&nbsp;</p>
<p><strong>4) SAP <span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/fiori" title="查看Fiori中的全部文章" target="_blank">Fiori</a></span></strong></p>
<p>自 740 之后，SAP主推 HANA 的同时，在移动端方面，SAP主要通过 <span class='wp_keywordlink_affiliate'><a href="http://www.sapjx.com/tag/fiori" title="查看Fiori中的全部文章" target="_blank">Fiori</a></span> 来实现在不同尺寸的移动设备上与 SAP 进行交互；</p>
<p>对于 Barcode 的新一代解决方案，Fiori也同样适用；</p>
<p>前台方面通过 SAP 自主开发的企业级富客户端JS架构：SAP UI5 搭建；</p>
<p>美工方面一直是 SAP 的软肋，SAP UI5 能很好解决这方面的问题，UI5 可以通过制作不同的主题和提供友好的交互界面；</p>
<p>后台方面主要通过 Gateway NetWeaver 与 OData 的协作来与 SAP 进行数据通信。</p>
<p>&nbsp;</p>
<p><strong>总结</strong></p>
<p>上面主要简述了 SAP 几种常见的 Barcode 解决方案，当然除了上面列举的之外，还有其他的解决方案，例如，不支持 wifi 环境下的Handheld App；</p>
<p>这主要还是取决于客户需求，根据笔者过往的项目经验，客户多关注于License和程序开发量（维护程序需要Coder成本）的问题。</p>
<p>其中，很多人可能会更多的想关注SAP Fiori的内容，当然笔者也在学习和摸索Fiori的知识中，主要由于其涉及的内容较多，</p>
<p>比如：Gateway NetWeaver，OData，RESTfull，ICF，SAP UI5等内容。</p>
<p>再者，Fiori 的内容比较新，需要SAP最新的增强包，而现在很多企业客户都未能打上增强补丁包，因为升级系统，对系统现状业务处理来说会有风险。</p>
